﻿// <copyright file="Rotation3D.cs" company="Axelerate Solutions S.A.">
// Copyright (c) Axelerate Solutions S.A.  All rights reserved.
// </copyright>

namespace Axelerate.Silverlight3D.Media.Media3D
{
    using System;
    using System.Net;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Documents;
    using System.Windows.Ink;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Animation;
    using System.Windows.Shapes;

    /// <summary>
    /// File name: Rotation3D.cs
    /// Company: Axelerate Solutions S.A.
    /// Created By: Daniel Rojas
    /// Created Date: 10/09/2008 11:41:00 h.
    /// Description: Specifies the 3-D rotation to be used in a transformation.
    ///   <Modifications>
    ///   </Modifications>
    /// </summary>
    public abstract class Rotation3D : Freezable,
    IFormattable
    {
        /// <summary>
        /// Gets the quaternion that represent the rotation.
        /// </summary>
        internal abstract Quaternion InternalQuaternion 
        {
            get;
        }

        #region IFormattable Members

        /// <summary>
        /// convert the actual rotation3D to a string representation
        /// </summary>
        /// <param name="format">format to use for the string. (ignored for this class)</param>
        /// <param name="formatProvider">format provider to use language specific formats (ignored by this class)</param>
        /// <returns></returns>
        public string ToString(string format, IFormatProvider formatProvider)
        {
            return this.ToString();
        }

        #endregion
    }
}
